//
//  SSDKHttpUtil.h
//  SuperSDK
//
//  Created by wyht－ios－dev on 15/10/6.
//  Copyright © 2018年 WYHT. All rights reserved.
//

#import <Foundation/Foundation.h>

#import "SSDKPaymentData.h"
#import "SSDKBaseResData.h"
#import "SSDKCheckOrderInfo.h"

@interface SSDKHttpUtil : NSObject

+ (void) postWithUrl : (NSString *) url
                data : (SSDKBaseReqData *) data
        httpDelegate : (void (^)(SSDKBaseResData* resData))gotInfo;

+ (BOOL) isNetworkReachable;

@end


@interface SSDKConfigUtil : NSObject

+ (void) postWithHttpDelegate:(void (^)(SSDKBaseResData* resData))gotInfo ;

@end


@interface SSDKSwitchConfigUtil : NSObject

+ (void) postWithHttpDelegate:(void (^)(SSDKBaseResData* resData))gotInfo ;

@end


@interface SSDKPayInfoUtil : NSObject

+ (void) postWithData:(SSDKPaymentData *)data
         httpDelegate:(void (^)(SSDKBaseResData* resData))gotInfo;

+ (void) postWithData:(SSDKPaymentData *)data
                extra: (NSMutableDictionary *) extra
         httpDelegate:(void (^)(SSDKBaseResData* resData))gotInfo;

@end


@interface SSDKUserInfoUtil : NSObject

+ (void) postWithSdkUid : (NSString *) sdkUid
            accessToken : (NSString *) aToken
           refreshToken : (NSString *) rToken
           httpDelegate : (void (^)(SSDKBaseResData* resData))gotInfo;

+ (void) postWithSdkUid : (NSString *) sdkUid
            accessToken : (NSString *) aToken
           refreshToken : (NSString *) rToken
                  extra : (NSMutableDictionary *) extra
           httpDelegate : (void (^)(SSDKBaseResData* resData))gotInfo;

+ (void) postWithDataPart : (NSMutableDictionary *) dataPart
                    extra : (NSMutableDictionary *) extra
             httpDelegate : (void (^)(SSDKBaseResData* resData))gotInfo;

@end

@interface SSDKCheckPayStatesUtil : NSObject

+ (void) postWithSSDKUid : (NSString *) superSDKUid
                 orderID : (NSString *) orderID
            httpDelegate : (void (^)(SSDKBaseResData* resData))gotInfo;

+ (void) postWithSSDKUid : (NSString *) superSDKUid
                 orderID : (NSString *) orderID
               extraData : (NSMutableDictionary *) extraData
            httpDelegate : (void (^)(SSDKBaseResData* resData))gotInfo;

@end

@interface SSDKActivityUtil : NSObject

+ (void) postWithSSDKUid : (NSString *) superSDKUid
            activityType : (NSString *) activityType
               otherData : (NSMutableDictionary *) otherData
            httpDelegate : (void (^)(SSDKBaseResData* resData))gotInfo;

@end

@interface SSDKTicketUtil : NSObject

+ (void) postWithTicket : (NSString *) ticket
           httpDelegate : (void (^)(SSDKBaseResData* resData))gotInfo;

@end
